tmux: the terminal multiplexer that keeps your work running
tmux is a free and open-source terminal multiplexer for Unix-like operating systems that lets you create, access and control many terminal sessions from a single screen. Sessions keep running after you disconnect, which makes tmux the standard tool for remote servers, long-running jobs and AI coding agents. It is released under the ISC license and runs on Linux, macOS and Windows (via WSL).
- 3.8latest release, 8 Oct 2026
- 2007created by Nicholas Marriott
- ISCfree, open-source license
Click the terminal, press Ctrl+b, let go, then press the next key. On a phone, tap Prefix then a key.
What is tmux?
What is tmux?
tmux (short for terminal multiplexer) is a command-line program that lets you run several programs in one terminal, detach from them while they keep running in the background, and reattach later, from the same machine or a different one. Unlike a normal terminal session, a tmux session survives a dropped SSH connection or a closed laptop lid.
Session persistence
Start a build, a migration or an AI agent on a server, detach with Ctrl+b d, close your laptop, and pick it up later with tmux attach.
Split panes and windows
Divide one terminal into panes, and keep sets of panes in windows that work like browser tabs. Logs, editor and tests, all in view.
Scriptable
Every action is a command, so a shell script can build your whole workspace, and other programs can drive tmux.
How tmux organizes your work
One background server holds every session. A session contains windows (the tabs you see in the status line), and each window is split into panes, each running its own shell. Clients, the terminals you type into, attach to a session and can come and go.
Here is the same structure on a real terminal: one window split into three panes, a second window named tests, and three sessions listed by tmux ls.

How this was captured
Captured 2026-10-28 17:56 UTC from a real xterm window running tmux 3.8 on Ubuntu 24.04. Nothing is mocked up. The commands that set up the screen:
tmux new-session -d -s work -n editor -x 110 -y 29
tmux new-session -d -s api -n server
tmux new-session -d -s logs
tmux split-window -h -t work:editor
tmux split-window -v -t work:editor.1
tmux new-window -d -t work -n tests
tmux send-keys -t work:editor.0 'clear; uptime -p; nproc; echo; df -h / | column -t; echo; ps -o pid,comm' Enter
tmux send-keys -t work:editor.1 'clear; tmux -V; tmux ls' Enter
tmux send-keys -t work:editor.2 'clear; tmux list-panes -F '"'"'#{pane_index}: #{pane_width}x#{pane_height}'"'"'' Enter
tmux select-pane -t work:editor.1Install
Install tmux
tmux is in every major package manager, and its source code and release tarballs are on GitHub (tmux/tmux). Pick your system; the tab for the one you are on opens by default.
brew install tmux
tmux -V
tmux 3.8Homebrew and MacPorts (sudo port install tmux) both ship tmux 3.8. No Homebrew yet? Install it from brew.sh first. Full tmux macOS install guide: Homebrew, MacPorts, source, clipboard and iTerm2 →
| Distribution | Command | Version you get |
|---|---|---|
| Ubuntu / Debian | sudo apt install tmux | 3.4 (Ubuntu 24.04), 3.6a (26.04), 3.5a (Debian 13) |
| Fedora / RHEL | sudo dnf install tmux | 3.8 (Fedora 44) |
| Arch Linux | sudo pacman -S tmux | 3.8 |
| Alpine | apk add tmux | 3.8 (edge) |
| openSUSE | sudo zypper install tmux | varies by release |
LTS releases ship older versions. If you need 3.8 features such as movable floating panes, build from source in about a minute. Full Ubuntu and Linux tmux install guide →
tmux is a Unix program, so on Windows you have two good options:
Recommended
WSL2 + real tmux
Run the actual tmux inside Linux on Windows. In PowerShell as administrator:
wsl --installRestart, open Ubuntu, then run sudo apt install tmux.
Native alternative
psmux
A separate, tmux-compatible multiplexer written in Rust for PowerShell and cmd. It reads your .tmux.conf but it is not the official tmux.
winget install psmuxMSYS2 (pacman -S tmux) and Cygwin also package tmux. Full Windows tmux install guide: WSL2, psmux, MSYS2, Cygwin and Windows Terminal →
Getting started
How to use tmux in five minutes
These are the commands you will use every day. Everything after the first step is a key press: hold Ctrl, press b, let go, then press the next key.
Start a named session
shelltmux new -s workA status line appears at the bottom (yellow-green in tmux 3.8, green in older versions): you are inside tmux. Naming sessions makes them easy to find later.
Split the screen
Ctrl+b % splits left and right, Ctrl+b " splits top and bottom. Move with Ctrl+b ← and the other arrows, or just click: the mouse is on by default in tmux 3.8.
Open another window
Ctrl+b c creates a window, Ctrl+b n and Ctrl+b p move between windows, and Ctrl+b 0 to Ctrl+b 9 jump straight to one.
Detach and walk away
Ctrl+b d detaches. Your programs keep running, even if you log out or SSH drops.
Reattach later
shelltmux ls work: 2 windows (created Tue Oct 28 09:14:02 2026) tmux attach -t workTo close a session for good, type
exitin every pane, or runtmux kill-session -t work. More on sessions →
Shortcuts
tmux shortcuts
The most used default key bindings. Each one is prefix (Ctrl+b) followed by the key.
What's new
What's new in tmux 3.8
tmux 3.8 was tagged on 8 October 2026. It is the biggest release in years: 2026 already has more commits than any year since 2009.
new-pane -O.→
◐Built-in light and dark themesA new theme option follows your terminal's light or dark mode. The default status line is now yellow-green on 256-color terminals.→
⇥Fuzzy switcherCtrl+b Tab finds a window, Ctrl+b Shift+Tab finds a session, from a pop-up list you can type into.→
🖱Mouse on by defaultYou no longer need set -g mouse on. Plus event-based hooks, auto-hiding scrollbars and copy mode that refreshes live.→
Source: git tag dates in github.com/tmux/tmux
Show the data
| Version | Tagged | Highlights |
|---|---|---|
| 2.9 | 2019-04-24 | Old -fg / -bg / -attr options removed in favour of -style options |
| 2.9a | 2019-05-01 | |
| 3.0 | 2019-06-14 | New {} brace syntax for commands in the config file |
| 3.0a | 2019-12-01 | |
| 3.1 | 2020-02-04 | ~/.config/tmux/tmux.conf supported as a config location |
| 3.1a | 2020-04-27 | |
| 3.1b | 2020-04-30 | |
| 3.1c | 2020-10-30 | |
| 3.2 | 2021-04-13 | display-popup (popups); $XDG_CONFIG_HOME/tmux/tmux.conf searched; extended-keys option |
| 3.2a | 2021-06-10 | |
| 3.3 | 2022-06-01 | Popup borders, styles and titles; Builds pick tmux-256color as default-terminal when available |
| 3.3a | 2022-06-09 | |
| 3.4 | 2024-02-13 | OSC 8 hyperlinks; SIXEL images (with --enable-sixel); menu-style and menu-border-style |
| 3.5 | 2024-09-27 | Default escape-time reduced from 500 ms to 10 ms; prefix-timeout option; Mirrored main-horizontal / main-vertical layouts; Extended keys revamp |
| 3.5a | 2024-10-05 | |
| 3.6 | 2025-11-26 | Pane scrollbars (pane-scrollbars); Nicer default second and third status lines; tiled-layout-max-columns; Case-insensitive search in modes |
| 3.6a | 2025-12-05 | |
| 3.6b | 2026-05-20 | |
| 3.7 | 2026-06-26 | Floating panes: new-pane, bound to Prefix *; Copy-mode line numbers; message-format option; list-keys -O sorting |
| 3.7a | 2026-07-01 | |
| 3.7b | 2026-07-01 | |
| 3.7c | 2026-08-17 | |
| 3.8 | 2026-10-08 | Floating panes can be moved, resized, tiled and swapped; modal panes (new-pane -O); Built-in light and dark themes (theme option); switch-mode fuzzy switcher on Prefix Tab / Prefix S-Tab; mouse now defaults to on; Event-based hooks and monitors (set-hook -B); Layout strings use a JSON subset; clear-on-attach option, copy-mode auto refresh, capture-pane -I |
Alternatives
tmux alternatives
GNU Screen is older and simpler, Zellij is friendlier out of the box, Byobu is a ready-made setup that runs on top of tmux, and terminals such as WezTerm and Ghostty can split panes locally. tmux remains the one that is installed almost everywhere, survives disconnects on servers and can be scripted completely.
| Feature | tmux | GNU Screen | Zellij | Byobu |
|---|---|---|---|---|
| Latest release | 3.8 (Oct 2026) | 5.0.2 (Jul 2026) | 0.45.1 (Aug 2026) | wraps tmux or Screen |
| Detach and reattach | Yes | Yes | Yes | Via tmux |
| Splits and floating panes | Both | Splits only | Both | Via tmux |
| Scripting | Every action is a command | Basic | CLI actions, plugins | Via tmux |
| Plugins | TPM, shell based | None | WebAssembly | Limited |
| Learning curve | Moderate | Moderate | Gentle (on-screen hints) | Gentle |
| Native Windows | WSL2 (or psmux) | Cygwin | Yes, since 0.44 (2026) | WSL2 |
Compare all tmux alternatives →
Head-to-head: Zellij vs tmux · Screen vs tmux · cmux vs tmux
Plugins
The tmux plugin ecosystem
The tmux plugin manager (TPM) installs community plugins from one line each in your ~/.tmux.conf. Three lines get you started:
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
# add to the bottom of ~/.tmux.conf:
# set -g @plugin 'tmux-plugins/tpm'
# run '~/.tmux/plugins/tpm/tpm'
tmux source ~/.tmux.conf
# then press prefix + I (capital i) to install pluginsSource: github.com repository pages, 2026-10-28
Show the data
| Repository | Stars |
|---|---|
| Oh my tmux! (gpakosz/.tmux) | 25.5k |
| tpm | 15.1k |
| tmuxinator | 13.7k |
| tmux-resurrect | 13.1k |
| vim-tmux-navigator | 6.3k |
| tmux-continuum | 4.1k |
| catppuccin/tmux | 3.2k |
| tmux-yank | 3.1k |
| sesh | 2.9k |
| tmux-sensible | 2.2k |
Config generator
Build your .tmux.conf visually
Pick a prefix key, a theme, vi keys and plugins, watch a live preview of the status line, then copy or download a commented config that works on your tmux version.
Explore all tmux guides
Frequently asked questions
What is tmux and what is it used for?
tmux is a free and open-source terminal multiplexer for Unix-like systems. It lets you switch between several programs in one terminal, detach them so they keep running in the background, and reattach them later. Developers, sysadmins and DevOps engineers use it to keep remote work alive over SSH, split a terminal into panes, and build scriptable workspaces.
How do I install tmux on macOS?
Install it with Homebrew: brew install tmux. Check it with tmux -V, which prints tmux 3.8 today. MacPorts users can run sudo port install tmux. See the macOS install guide.
Does tmux work on Windows?
Not natively. The usual way is to install WSL2 (wsl --install) and run sudo apt install tmux inside Ubuntu. psmux is a separate tmux-compatible program that runs natively in PowerShell, and MSYS2 and Cygwin also package tmux. See tmux on Windows.
How do I exit tmux?
To leave tmux but keep everything running, detach with Ctrl+b then d. To end it, type exit in each pane, or run tmux kill-session -t name (or tmux kill-server to stop every session).
What is the difference between tmux and GNU Screen?
Both keep sessions alive after you disconnect. tmux has a client-server design with many clients per session, far more scripting through its command set, a plugin ecosystem (TPM), floating panes and faster development. Screen is older, simpler and still maintained. See Screen vs tmux.
What is TPM (Tmux Plugin Manager) and how do I install it?
TPM is the standard plugin manager for tmux. Install it with git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm, add set -g @plugin 'tmux-plugins/tpm' and run '~/.tmux/plugins/tpm/tpm' to the end of ~/.tmux.conf, reload, and press prefix then I to install plugins.
How do I check my tmux version?
Run tmux -V (capital V). The latest release is 3.8, tagged on 8 October 2026. Inside tmux you can also run tmux display -p '#{version}'.
What does tmux -CC do?
tmux -CC starts tmux in control mode, which iTerm2 on macOS uses to show tmux windows and panes as native iTerm2 tabs and splits. In a normal terminal it prints control-mode messages instead of drawing tmux. See iTerm2 and tmux -CC.
Is tmux free?
Yes. tmux is open source under the ISC license, free for any use, and maintained by Nicholas Marriott and contributors at github.com/tmux/tmux.